1. Field of the Invention
The present invention relates to a process for the automatic recognition of an image on the basis of a corresponding reference image.
The present invention applies to all fields where it is necessary to recognize an image or an object, e.g. by comparing the image or the object with a reference image or object. It is particularly applicable to the field of robotics, in which research is presently directed towards so-called "intelligent" robots able to interpret information from a external medium.
2. Description of the Prior Art
A process for the automatic recognition of an image on the basis of a corresponding reference image is known, and consists in each case of obtaining, by optoelectronic detection means, analog signals, whose amplitudes are respectively dependent on the intensity levels of the light rays reflected from the image. This process then consists of digitizing by means of an analog-digital converter, the values of the amplitudes of the analog signals, the digitized values being recorded in a memory. By means of a processing unit receiving the stored digital values corresponding to the amplitudes, digital values corresponding to a contour line characterizing the image are then determined. For example, this contour line can be determined by detecting intensity transitions in the light rays from the image, wherein the transitions are defined relative to a predetermined intensity threshold.
The digital values corresponding to the coordinates of the contour line points are stored. This known process also consists of coding, by means of the processing unit receiving the digital values of the coordinates of the contour line points, segments whose ends are located on the lines. These segments make it possible to represent it at the very best in an approximate manner. This is followed by an individual comparison of the segments corresponding to the contour line of the image to be recognized with the segments corresponding to the contour line of the reference image.
Various methods make it possible to code successive segments defining a contour line and there are also various methods for comparing the segments defining the contour line.
One of the methods used for coding segments defining a contour line consists of defining each segment by the cartesian coordinates of its ends, the segments representing very varied orientations relative to a reference direction. This method consists of obtaining, by optoelectronic detection means, analog signals, whose amplitudes respectively depend on the intensity levels of the light rays from the image or the contour to be recognized. The values of the amplitudes of the analog signals are digitized and the digital values obtained are recorded in a memory. By means of a processing unit receiving the stored digital values of the amplitudes, digital values corresponding to the coordinates to the points of at least one contour line characterizing the image in a reference line X, Y are determined, the values of these coordinates then being stored. Using the processing unit receiving the digital values of the coordinates of the contour line points, successive segments whose ends are located on this line are coded, these codes then are stored at the same time as the digital values of the coordinates of the ends of the corresponding segments. For each segment of the line to be recognized and the reference contour and on the basis of coded values of the segments and the coordinates of their ends, a pair of characteristic values .rho.i, .theta.i are obtained and, in curvilinear coordinates, correspond respectively to the length .rho.i of each segment and to the angle .theta.i formed by the segment with respect to a reference direction. The pairs of characteristic values obtained respectively for the segments of the contour to be recognised and the reference contour are compared.
This method is particularly ineffective, when the image has continuous contours for which it is then necessary to record a large amount of information for adjacent points. The main disadvantage of this method is that it unnecessarily fills up the memory of the processing unit making it possible to analyze the contour on the basis of these segments.
One of the methods making it possible to carry out a comparison between the segments corresponding to the contour line of the image to be recognized and the segments corresponding to the contour line of the reference image consists of using "developed codes" of the segments defining the contour to be recognized and the segments defining the reference contour. A developed code is the curve obtained by carrying on the abscissa the curvilinear path of the segments and on the ordinate the angle formed between the considered segment and the horizontal. This curve is called a "signature". The aforementioned known method then consists of investigating whether the distance between the signature of the reference contour and the signature of the contour to be recognized is of a minimum nature. Thus, when this distance is at a minimum, it is possible to affirm that the contour to be recognized corresponds to the reference contour. Thus, the measurement of the distance between the two signatures consists of measuring the area separating them. The main disadvantage of this method is that it requires a long processing time.